#!/usr/bin/env python3

import os
import sys

import common

parser = common.get_argparse(argparse_args={
    'description': '''Run a Buildroot ToolChain tool like readelf or objdump.

For example, to get some information about the arm vmlinux:

....
./%(prog)s readelf -- -e "$(./getvar vmlinux)"
....

Get the list of available tools with:

....
ls "$(./getvar -a arm host_bin_dir)"
....
'''
})
parser.add_argument(
    '--dry',
    help='Just output the tool path to stdout but actually run it',
    action='store_true',
)
parser.add_argument('tool', help='Which tool to run.')
parser.add_argument(
    'extra_args',
    default=[],
    help='Extra arguments for the tool.',
    metavar='extra-args',
    nargs='*'
)
args = common.setup(parser)
if args.baremetal is None:
    image = common.vmlinux
else:
    image = common.image
tool= common.get_toolchain_tool(args.tool)
if args.dry:
    print(tool)
else:
    sys.exit(common.run_cmd(
        [tool, common.Newline]
        + common.add_newlines(args.extra_args),
        cmd_file=os.path.join(common.run_dir, 'run-toolchain.sh'),
    ))
